home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / brutil.arc / KEYDOS.ASM < prev    next >
Encoding:
Assembly Source File  |  1986-08-08  |  768 b   |  59 lines

  1. CODE    SEGMENT PARA PUBLIC
  2.     ASSUME    CS:CODE,DS:CODE,ES:CODE
  3.     ORG    100H
  4. START    PROC    NEAR
  5. LOOP:    MOV    AH,0
  6.     INT    16H
  7.     MOV    NEWKEY,AX
  8.     MOV    AH,2
  9.     INT    16H
  10.     CMP    AL,OLDSHFT
  11.     JNZ    NOEXIT
  12.     MOV    NEWSHFT,AL
  13.     MOV    AX,NEWKEY
  14.     CMP    AX,OLDKEY
  15.     JZ    EXIT
  16.     MOV    AL,NEWSHFT
  17. NOEXIT:    MOV    OLDSHFT,AL
  18.     CALL    HEX
  19.     MOV    AX,NEWKEY
  20.     MOV    OLDKEY,AX
  21.     MOV    AL,AH
  22.     CALL    HEX
  23.     MOV    AX,OLDKEY
  24.     CALL    HEX
  25.     MOV    DL,13
  26.     CALL    HEX2
  27.     MOV    DL,10
  28.     CALL    HEX2
  29.     JMP    LOOP
  30. EXIT:    RET
  31. HEX:    PUSH    AX
  32.     MOV    CL,4
  33.     SHR    AL,CL
  34.     CALL    HEX1
  35.     POP    AX
  36.     AND    AL,15
  37. HEX1:    ADD    AL,90H
  38.     DAA
  39.     ADC    AL,40H
  40.     DAA
  41.     MOV    DL,AL
  42. HEX2:    MOV    AH,2
  43.     INT    21H
  44.     RET
  45. OLDKEY    DW    0
  46. OLDSHFT    DB    0
  47. NEWKEY    DW    0
  48. NEWSHFT    DB    0
  49. START    ENDP
  50. CODE    ENDS
  51.     END    START
  52. L,AL
  53. HEX2:    MOV    AH,2
  54.     INT    21H
  55.     RET
  56. OLDKEY    DW    0
  57. OLDSHFT    DB    0
  58. NEWKEY    DW    0
  59.